/*
 *  WsvJdbc - a JDBC driver for WSV (values separated by whatever) data files
 *  Copyright (C) 2004  Daniele Pes
 *
 *  This library is free software; you can redistribute it and/or
 *  modify it under the terms of the GNU Lesser General Public
 *  License as published by the Free Software Foundation; either
 *  version 2.1 of the License, or (at your option) any later version.
 *
 *  This library is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 *  Lesser General Public License for more details.
 *
 *  You should have received a copy of the GNU Lesser General Public
 *  License along with this library; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */

package axs.jdbc.dataSpecification.supportedJavaTypes;

import axs.jdbc.dataSourceConfiguration.TypeException;
import axs.jdbc.utils.StringUtilities;


/**
 * @author 		Daniele Pes
 * @version    $Id: TypeClass.java,v 1.2 2007/04/16 17:24:36 montag451 Exp $
 */
public class TypeClass 
implements ParserFromStringToObject {
   public Object fromString(String value) throws TypeException {return null;}
	public Object fromString(String value, String dateFormat) throws TypeException {return null;}
	
	/**
	 * This must be used only after verified that this value's TypeClass is a time Formatted Type, 
	 * TypesMapper.isAtimeFormattedType, in the outer scope
	 * @param value
	 * @param dateFormats
	 * @return
	 * @throws TypeException
	 */
	public Object fromString(String value, String[] dateFormats) throws TypeException {
		Object o = null;
		if (!StringUtilities.isEmptyIgnoreBlanks(value) && dateFormats != null) {
			for (int i = 0; i < dateFormats.length; i++) {
				o = fromString(value, dateFormats[i]);
				if(o != null || value == null)
					break;
			}
		}
		return o;
	}
}
